package com.data.construct.binaryTree;

/**
 * 递归遍历二叉树
 * DFS(Depth-First Search) 深度优先搜索
 *
 * @author sunhl
 * @Description:
 * @Date: created in 2024/11/11 0011 10:09
 * @Modified By:
 */
public class DFSBinaryTree {

    // 二叉树的遍历框架
    void traverse(TreeNode root) {
        if (root == null) {
            return;
        }
        // 前序位置
        traverse(root.left);
        // 中序位置
        traverse(root.right);
        // 后序位置

        // 前序位置的代码会在进入节点时执行；
        // 中序位置的代码会在左子树遍历完成后，遍历右子树之前执行；
        // 后序位置的代码会在左右子树遍历完成后执行：
        // 二叉搜索树（BST） 的中序遍历结果是有序的，这是 BST 的一个重要性质。
    }
}
